Documents, including spreadsheets, have limitations in terms of how the underlying data in the document or spreadsheet is shared. Typically, a document, such as a spreadsheet, is shared by copying files containing the workbooks and providing a copy of the file to each person with whom the author wants to share the data. Sharing is done at the file level of granularity and each user works on a copy of the workbook. When a shared user modifies a copy of the workbook, the change exists only in that user's version of the workbook. Every user is granted complete access to and can view and/or modify their copy of the workbook. However, this is inconvenient as one user's changes are not available to the other users, so sharing involves sending updated copies around to each of the users.
In software as a service (SaaS) applications, multiple users can be granted access to a single workbook. The advantage being that each user that is granted access is able to view and/or modify essentially the same workbook. This enables all users to see each other's updates. In some cases, sharing can be granted at the sheet level, so that different users are granted permissions to view and/or modify a sheet of the workbook (e.g., a page of the workbook) instead of the entire workbook. However, in these cases, the users granted access to the workbook or sheet are still granted viewing and/or modifying permission for the entire workbook or sheet. In other words, in the event that a workbook is shared, then the entire workbook is viewable, and in the event that a sheet is shared, then the entire sheet is viewable. Any information that should not be available for viewing and/or modifying by the shared user cannot be placed in the workbook or sheet, which is often impractical and inconvenient.